<!DOCTYPE html>
<html lang="en">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Static Single Assignment</title>
<link rel="stylesheet" type="text/css" href="https://gcc.gnu.org/gcc.css" />
</head>

<body>

<h1>Static Single Assignment</h1>

<p>March 9, 2000</p>

<p>We are pleased to announce that 
CodeSourcery, LLC
and Cygnus, a Red Hat company have
contributed an implementation of the static single assignment (SSA)
representation for the GCC compiler.  SSA is used in many modern
compilers to facilitate a wide range of powerful optimizations.  Now
that SSA has been added to GCC, many optimizations can be added that
were previously difficult or impossible.</p>

<p>In a function that has been converted to SSA form, each register is
assigned a value only once.  This simplification makes implementation
of optimization algorithms possible or easier, since the path from
assignment to use of a register is more easily determined.  After
optimizations have been performed, the function is converted out of
SSA form before code generation proceeds.</p>

</body>
</html>
